RELEASE NOTES
=============

Graphics Control.z80, effectively v1.0 - 8 April 1999
A combination of David Elphick's Spectrum Plotter (ZX Computing, Jan/Feb 1983) with my own routine to
define UDGs by inputting the eight line codes directly. Only the UDGs 1-S are available so the program
can be used in 128 BASIC without showing SPECTRUM and PLAY where UDGs T and U would otherwise be.

Graphics Control (remixed), effectively v1.1 - 7 October 2003? (probably earlier than this and made
into a TZX just before GC v2.0. Was probably developed on ZX32 with ZXS snapshots.)
Mild rehash of the menu, the "stop" option was moved from 4 to 0, and the lines of code were moved to
earlier in the listing.
Added the option to print the listing of codes in the Spectrum Plotter.
The code-entry option now prints the codes on screen as they are entered.

Graphics Control v2.0 - 7 October 2003
Another very mild menu rehash (inverse video title).
Added a third option, the character enlarger I'd found in a library book when I was a nipper and saved
on one of the very few tapes that I retained in the move out of Great Dunmow. Expanded the enlarger to
display the enlarged character as a grid of 0s and 1s, and calculate the decimal values for each row
from that.

Graphics Control v3.0 - 19 October 2003? (probably earlier than this and made into a TZX just before GC v3.1)
Added an all-new routine to define character sets, to be poked into addresses 64000-64767 (these do not
overlap the UDGs but leave some unused space between the end of the character set and the UDGs...)
Character sets are saved CODE 64000,768 and activated with POKE 23607,249. POKE 23607,60 restores the
default ROM character set. There is an option to copy the ROM character set into the user-defined area.

Graphics Control v3.1 - 19 October 2003
A visual update to the line-by-line UDG generator, also allowing the option to save UDGs to tape as
CODE 65368,168. This saves UDGs from A-U but only A-S are handled by the program for proper 128 BASIC
compatibility.
Also updated the menu of the character set definer to match that of the UDG generator.

Graphics Control v3.2 - 28 September 2004
Added the ability to transfer the capitals from a redefined character set into the lower case area -
useful if working on a ZX80/81 style character set.
BUT! Has a bug whereby transferring the ROM character set to the redefined area causes the program
to stop with 2 Variable not found, 4778:3 - trying to print the character set stored in b$ that wasn't
defined at that point (because of a CLEAR command, presumably). Hence...

Graphics Control v3.2a - 16 September 2009
Adds line 4777 to define b$, as a bugfix.
(I don't believe the bug took five years to notice - it was probably done before and the SZX snapshot
was updated.)

Graphics Control v4.0 - 13 March 2020
Added an all-new facility to perform simple transformations on UDGs - flip, rotate, invert.
Character set defining routine now also allows the code to be saved at different addresses (in multiples
of 256 so there's no need to POKE 23606,n where n is non-zero). The minimum address is at least 256
bytes above STKEND so there's no chance of the program being overwritten!
Completely rebuilt the main menu, now with a brief description for all options listed under option 9.

Graphics Control v4.1 - 15 October 2020
Changed the default address for character sets to 64512, i.e. as high in memory as the character set can be POKEd without clashing with the UDGs and not needing to use POKE 23606 as well as 23607.
